﻿@{    ViewBag.Title = "Rock Paper Scissor";
    Layout = "~/Views/Shared/_Layout.cshtml";
}

<!--  
    
    Ska innehålla:

    - Titel (#title)
    - "Label" för att visa vems tur det är (#turn)
    - Knappar (Rock, Paper, Scissor)
    - Knapp för för "konfirmera" valet (Play)

    -->


<h2 id="title">Spelar @Model.NameOfGameType</h2>

<p id="info">Omgång @Model.ActiveGameRound.GameRoundNumber av @Model.TotalNumOfGameRounds</p>

@foreach (var player in Model.Players)
         {
              <p>@player.Name</p>
         }

<p id="turnInfo">!</p>
<input type="hidden" value="@Model.GameId" id="GameIdHidden" name="GameIdHidden" />

<div id="gameInfo">
    <div id="playerInfo">
        <form method="post" action="#" id="gameChoiceForm">
            <fieldset>
                <legend></legend>
                <select name="choice" id="choice">
                    <option value="0" selected>Rock</option>
                    <option value="1">Scissor</option>
                    <option value="2">Paper</option>
                </select>
            </fieldset>
            <input type="button" value="Spela" onclick="SubmitTurnForm(this)" />
        </form>

    </div>
    <div id="opponentInfo">

        <fieldset>
            <legend></legend>
            <img id="opponentChoiceImage" src="" />
        </fieldset>
    </div>
</div>

<!-- Submitta formuläret med AJAX -->
<script>

    function SubmitTurnForm(submitBtn) {

        $.mobile.showPageLoadingMsg("a", "Gör val");
        $("#submitBtn").attr("disabled", true);

        $.ajax({
            type: "POST",
            url: '@Url.Content("~/Home/SubmitTurn")',
            data: { choice: $("#choice").val(), gameId: $("#GameIdHidden").val() },
            error: function (xhr, status, error) {
                //do something about the error
                $.mobile.hidePageLoadingMsg();
                alert("Misslyckades att lägga spel. " + error);
            },
            success: function (data) {
                $.mobile.hidePageLoadingMsg();
                if (data == true) {
                    $("#submitBtn").text("Spelat");
                } else if (data == false) {
                    alert("Misslyckades att lägga spel.");
                }
            }
        });

        return false;// if it's a link to prevent post

    }

    //När en runda är slut visas resultátet
    function RoundCompleted(p1Choice, p2Choice, winner)
    {
        alert("Round completed! " + winner + " vann.");
    }

    //När en runda är avslutad nollställs "allt".
    function NewRound()
    {

    }

    $(document).ready(function () {

        $("#turnInfo").text("Ready 2 rumble!");
        getActiveGameInfo_init();
        setInterval(function () { checkGameStatus() }, 1000);

    });//Slut på doc.ready

    function getActiveGameInfo_init()
    {
        $.mobile.showPageLoadingMsg("a", "Hämtar spel ..");
        $.ajax({
            url: '@Url.Content("~/Home/GetActiveGameInfo_Init")',
            data: { gameId: $("#GameIdHidden").val()},
            success: function (data) {
                $.mobile.hidePageLoadingMsg();
            }
        });
    }

    function checkGameStatus()
    {
        var _gameId = $("#GameIdHidden").val();

        $.ajax({
            url: '@Url.Content("~/Home/CheckGameStatus")',
           data: { gameId: _gameId},
           success: function (data) {
               if(data.length > 1)
               {
                   RoundCompleted(data);
               }
           }
       });
    }

    function checkTurn()
    {

    }

</script>
